/* ====================================== */
/* CSS for control sap.ui.table/Grouping  */
/* Base theme                             */
/* ====================================== */

@_sapUiTableGroupIconHeightDefault: 32px; /*2rem*/
@_sapUiTableGroupIconHeightCondensed: 24px; /*1.5rem*/
@_sapUiTableGroupIconHeightCozy: 48px; /*3rem*/
@_sapUiTableGroupHeaderBackground: @sapUiListTableGroupHeaderBackground;
@_sapUiTableGroupOutlineWidth: @_sapUiTableFocusOutlineWidth;
@_sapUiTableGroupIconBorderWidth: 1px;
@_sapUiTableGroupIconFontSize: @sapMFontMediumSize;

.sapUiTableTreeIcon {
	display: none;
	width: 25px;
	padding: 0;
	flex-shrink: 0;
	margin-right: 6px;
}

.sapUiSizeCondensed {
	
	.sapUiTableCell > .sapUiTableTreeIcon {
		padding: 0;
		margin-right: 1px;
	}
	
	.sapUiTableCell > .sapUiTableTreeIcon::before {
		line-height: 1.5rem;
	}
	
}

.sapUiTableTreeIcon:focus {
	outline: @_sapUiTableGroupOutlineWidth dotted @sapUiContentFocusColor;
}

html[data-sap-ui-browser^="ed"] .sapUiTableTreeIcon:focus,
html[data-sap-ui-browser^="ie"] .sapUiTableTreeIcon:focus {
	outline: 0px;
}

html[data-sap-ui-browser^="ed"] .sapUiTableTreeIcon:focus::before,
html[data-sap-ui-browser^="ie"] .sapUiTableTreeIcon:focus::before {
	outline: @_sapUiTableGroupOutlineWidth dotted @sapUiContentFocusColor;
}

.sapUiTableTreeIcon:focus:not(*:root) { /*Webkit*/
	outline-offset: -1px;
}

@supports (-moz-appearance:meterbar) { /* Firefox */
	.sapUiTableTreeIcon:focus {
		outline-offset: -1px;
	}
}

.sapUiTableTreeMode .sapUiTableTreeIcon,
.sapUiTableTreeMode .sapUiTableTreeIcon::before {
	display: inline-block;
}




.sapUiTableGroupIcon {
	display: none;
	font-size: @_sapUiTableGroupIconFontSize;
	cursor: pointer;
	line-height: @_sapUiTableGroupIconHeightDefault - 2 * @_sapUiTableGroupIconBorderWidth - @_sapUiTableGroupOutlineWidth;
	position: absolute;
	left: 0px;
	top: @_sapUiTableGroupOutlineWidth;
	bottom: 0px;
	white-space: nowrap;
	font-weight: normal;
	color: @sapUiBaseText;
	overflow: hidden;
	text-overflow: ellipsis;
	min-width: 48px;
	background-color: transparent;
	padding-right: 40px;
	background: @_sapUiTableGroupHeaderBackground;
	z-index: 1;
	box-sizing: border-box;
	border: @_sapUiTableGroupIconBorderWidth solid transparent;
	background-clip: content-box;
}

.sapUiSizeCondensed .sapUiTableGroupIcon {
	line-height: @_sapUiTableGroupIconHeightCondensed - 2 * @_sapUiTableGroupIconBorderWidth - @_sapUiTableGroupOutlineWidth;
}

.sapUiSizeCozy .sapUiTableGroupIcon {
	line-height: @_sapUiTableGroupIconHeightCozy - 2 * @_sapUiTableGroupIconBorderWidth - @_sapUiTableGroupOutlineWidth;
}

.sapUiTableGroupIcon::before,
.sapUiTableTreeIcon::before {
	font-family: "SAP-icons";
	font-size: 12px;
	font-weight: normal;
	display: none;
	width: @_sapUiTableRowHdrWidth;
	text-align: center;
	vertical-align: middle;
	color: @sapUiContentIconColor;
}

.sapUiTableGroupIcon.sapUiTableGroupIconOpen::before,
.sapUiTableTreeIcon.sapUiTableTreeIconNodeOpen::before {
	content: '\e1e2';
}

.sapUiTableGroupIcon.sapUiTableGroupIconClosed::before,
.sapUiTableTreeIcon.sapUiTableTreeIconNodeClosed::before {
	content: '\e066';
}

html[dir=rtl] {
	.sapUiTableGroupIcon.sapUiTableGroupIconClosed::before,
	.sapUiTableTreeIcon.sapUiTableTreeIconNodeClosed::before {
		content: '\e067';
	}
}

.sapUiTableTreeIcon.sapUiTableTreeIconLeaf {}

// Fading effect for overlapping
.sapUiTableGroupIcon:after {
	display: none;
	position: absolute;
	content: "";
	width: 40px;
	top: 1px;
	bottom: 1px;
	right: 0;
	box-shadow: inset 40px 0px 20px -20px @_sapUiTableGroupHeaderBackground;
}




.sapUiTableRowHdr.sapUiTableGroupHeader {
	border-right: none;
}

.sapUiTableRowHdr.sapUiTableGroupHeader:focus .sapUiTableGroupIcon {
	outline-width: @_sapUiTableGroupOutlineWidth;
	outline-style: dotted;
	outline-offset: 0px;
	outline-color: @sapUiContentFocusColor;
}

.sapUiTableCtrl tr.sapUiTableGroupHeader,
.sapUiTableRowHdr.sapUiTableGroupHeader,
.sapUiTableRowAction.sapUiTableGroupHeader {
	background-color: @_sapUiTableGroupHeaderBackground;
	border-color: @sapUiListBorderColor;
	color: @sapUiListTableGroupHeaderTextColor;
}

.sapUiTableRowAction.sapUiTableGroupHeader {
	border-left-color: transparent;
}

.sapUiTableRowAction.sapUiTableGroupHeader.sapUiTableFixedPreBottomRow {
	border-bottom-color: @sapUiListTableFixedBorder;
}

.sapUiTableGroupMode .sapUiTableRowHdr.sapUiTableGroupHeader > .sapUiTableGroupIcon,
.sapUiTableGroupMode .sapUiTableRowHdr.sapUiTableGroupHeader > .sapUiTableGroupIcon::before,
.sapUiTableGroupMode .sapUiTableRowHdr.sapUiTableGroupHeader > .sapUiTableGroupIcon:after {
	display: inline-block;
}

.sapUiTableGroupMode .sapUiTableGroupHeader td {
	border-right: none;
}

.sapUiTableGroupMode .sapUiTableRowHdr {
	border-left: 1px solid @sapUiListVerticalBorderColor;
}

.sapUiTableGroupMode .sapUiTableGroupHeader.sapUiTableRowHvr,
.sapUiTableGroupMode .sapUiTableRowHvr .sapUiTableGroupIcon {
	background-color: @sapUiListHoverBackground;
}

.sapUiTableGroupMode .sapUiTableRowHvr .sapUiTableGroupIcon:after {
	box-shadow: inset 40px 0px 20px -20px @sapUiListHoverBackground;
}

// The cell under the first column cell of a group header is only allowed to show a measure label. Any other content should be hidden.
.sapUiTableGroupMode.sapUiAnalyticalTable .sapUiTableGroupHeader .sapUiTableTdFirst:not(.sapUiTableMeasureCell) .sapUiTableCell {
	display: none;
}

// sapUiAnalyticalTableGroupCellHidden and sapUiAnalyticalTableSumCellHidden provides the possibility for applications to hide
// the cell content of a column on group headers and / or sums by using addStyleClass of the column template
.sapUiTableGroupMode.sapUiAnalyticalTable .sapUiTableGroupHeader .sapUiTableCell > .sapUiAnalyticalTableGroupCellHidden,
.sapUiTableGroupMode.sapUiAnalyticalTable .sapUiAnalyticalTableSum .sapUiTableCell > .sapUiAnalyticalTableSumCellHidden {
	visibility: hidden; /* hidden cell content*/
}

// Shift last cell content to left, on the right edge the touch button is placed.
html.sap-tablet:not(.sap-desktop), html.sap-phone {
	.sapUiTableGroupMode .sapUiTableCtrlScroll .sapUiTableGroupHeader td:last-child {
		padding-right: 3rem;
	}
}

.sapUiTableGroupMode .sapUiTableRowHdr::before {
	content: '';
	display: block;
	position: absolute;
	top: -1px;
	left: -1px;
	right: 0px;
	box-sizing: border-box;
	border-top: 1px solid @sapUiListBorderColor;
	height: 1px;
}

.sapUiTableGroupMode .sapUiTableRowHdr.sapUiTableFixedFirstBottomRow::before {
	border-top-color: @sapUiListTableFixedBorder;
}

.sapUiTableGroupShield {
	position: absolute;
	top: 0px;
	left: -1px;
	bottom: -1px;
	box-sizing: border-box;
	width: 0px;
	margin-left: -0px;
	background-color: @sapUiListBackground;
	pointer-events: none;
}

.sapUiTableGroupMode .sapUiTableRowHdr:focus:not(.sapUiTableGroupHeader)::before {
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	border: @_sapUiTableGroupOutlineWidth dotted @sapUiContentFocusColor;
	pointer-events: none;
	z-index: 1;
	height: auto;
}


.sapUiTableRowHdr.sapUiTableGroupHeader:focus:not(*:root),
.sapUiTableGroupMode .sapUiTableRowHdr:focus:not(*:root) {
	outline: 0px;
}

/*Separation needed from declaration above because of IE*/
.sapUiTableRowHdr.sapUiTableGroupHeader,
.sapUiTableGroupMode .sapUiTableRowHdr:focus {
	outline: 0px;
}

.sapUiTableGroupMode .sapUiTableTr.sapUiTableGroupHeader > .sapUiTableTDDummy {
	border-bottom: 1px solid @sapUiListBorderColor;
	background: @_sapUiTableGroupHeaderBackground;
}

.sapUiTableRowHdr.sapUiTableGroupHeader.sapUiTableFixedPreBottomRow,
.sapUiTableGroupMode .sapUiTableTr.sapUiTableGroupHeader.sapUiTableFixedPreBottomRow > .sapUiTableTDDummy {
	border-bottom-color: @sapUiListTableFixedBorder;
}


.sapUiTableGroupMenuButton {
	display: none;
}

.sapUiTableGroupMode.sapUiAnalyticalTable .sapUiTableRowHdr.sapUiTableGroupHeader .sapUiTableGroupMenuButton {
	position: absolute;
	min-width: 2.5rem;
  	text-align: center;
	z-index: 2;
	right: 0;
	top: 50%;
	-webkit-transform: translatey(-50%);
	transform: translatey(-50%);
	background: @_sapUiTableGroupHeaderBackground;
	font-family: 'SAP-icons';
	font-size: 1.375rem;
	color: @sapUiContentIconColor;
	display: block;
}